For Developers
The table below is color coded to show the status of development work on porting CHDK to different cameras. If there is some work being done to port to a particular camera, there should also be a link to a camera-specific development page. The page also has links to articles which could be useful if you want to participate in the development process. Cameras overview ;Legend: :* Black - neither original firmware nor firmware dump is available :* - no firmware dump yet, but folks working on it :* - either original firmware or firmware dump is available; porting is needed :* - successfully ported :* - Firmware dump available, but uses a new OS that is fundamentally different from all previous cameras that were successfully ported. Porting to these cameras will require a lot of analysis and work. See this link: (GrAnd's analysis of the A720 firmware dump) update: A lot of analysis and work has been done and the first cameras have been ported. See: http://chdk.setepontos.com/index.php/topic,234.0.html Note: the porting process entails: # get the camera to somehow respond to something on the card. (cameras in ) # using the process that got you step 1, and some electronics, read out a copy of the existing firmware (e.g., dump the firmware). (cameras in ) # analyze the firmware, find out where key routines are. # modify the source code to add the locations of these key routines # compile the software. (cameras in ) Common articles ; Modifying the Source Code : Basic information about project structure. ; Documentation of the Sourcecode : Yes, some documentation is also required. ; Bug tracking and feature requests with Mantis New ! : How to use Mantis to report bugs/issues found in CHDK, request features, submit contributions. ; Compiling the CHDK under GNU/Linux ; Compiling the CHDK under Mac OS X ; Compiling the CHDK under Windows : How to tune build environment and compile CHDK. ;Signature finder New ! : Finding signatures automatically with the "Signature finder" (finsig/gensig) tool ;Porting the CHDK : Various methods of getting of firmware dump. ;Optimizing ARM sourcecode : Howto make your CHDK apps/plugins work quickly. ;Loading dump to IDA : Using IDA for a dump analysis. ;IDA Visual Analysis : Visual graph analysis tools. ;Adding support of a new camera : The instruction for adapt sources to a new camera. ;DryOS Porting : Information about the new OS. ;GPL_Tools : Collection of documentations using GNU/GPL tools for binary blobs analyses ;Adding Firmware Features : A guide for finding and adding stuff from the firmware to CHDK and uBASIC. ;Developer Technical Documents : Useful external documents relating to processor, OS and relevant standards. Some technical info ;List of PropertyCases :List with description of special registers which indicate and control DIGIC processor. ;List of Params :List with description of special registers which indicate and control DIGIC processor. ;Camera IDs :List of camera product IDs Camera-dependent info The following links take you to pages describing the state of the porting process on additional camera models. Developers! If you are working on a particular camera not listed here, please open up a new page and record your progress. *A420 *A430 *A530 *A540 *A550 *A560 *A580 * *A650IS *A700 * *A1000IS *S5IS *S80 *SD30 *SD300 *SD400 *SD450 (IXUS55) *SD550 (IXUS750) *SD600 (IXUS60) *SD700IS (IXUS800IS) *SD790IS (IXUS90IS) *SD800IS (IXUS850) *SD900 (IXUS900TI) *SD950IS *SD1000 (IXUS70) *SX100IS *G9 *TX-1 Category:Development